package com.zs.blog.exception;

import com.zs.blog.model.ResponseResult;
import jakarta.servlet.http.HttpServletRequest;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.MethodArgumentNotValidException;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * @Title: GlobalExceptionHandler
 * @Author zs
 * @Package com.zs.blog.exception
 * @Date 2024/11/11 20:17
 * @description: 全局异常处理器
 */
@RestControllerAdvice
@Slf4j
public class GlobalExceptionHandler {

    /**
     * 未知异常处理器
     * @param e 异常
     * @return
     */
//    @ExceptionHandler(Exception.class)
//    public ResponseResult<?> handleException(Exception e, HttpServletRequest req){
//        log.error(e.getMessage());
//        return null;
//    }

    /**
     * 参数校验异常处理器
     * @param e 异常
     * @return
     */
//    @ExceptionHandler(MethodArgumentNotValidException.class)
//    public ResponseResult<?> handleArgsValidException(Exception e, HttpServletRequest req){
//
//        return null;
//    }

    /**
     * 业务异常处理器
     * @param e 异常
     * @return
     */
//    @ExceptionHandler(BusinessException.class)
//    public ResponseResult<?> handleBizException(Exception e, HttpServletRequest req){
//
//        return null;
//    }
}
